$(function() {
    $(".checkall").change(function() {
            // console.log($(this).prop("checked"));
            $(".j-checkbox,.checkall").prop("checked", $(this).prop("checked"));

            if ($(this).prop("checked")) {
                // 让所有的商品添加 check-cart-item 类名
                $(".cart-item").addClass("check-cart-item");
            } else {
                // check-cart-item 移除
                $(".cart-item").removeClass("check-cart-item");
            }
        })
        // 2. 如果小复选框被选中的个数等于3 就应该把全选按钮选上，否则全选按钮不选。
    $(".j-checkbox").change(function() {
            if ($(".j-checkbox:checked").length === $(".j-checkbox").length) {
                $(".checkall").prop("checked", true);
            } else {
                $(".checkall").prop("checked", false);
            }
            if ($(this).prop("checked")) {
                $(this).parents(".cart-item").addClass("check-cart-item");
            } else {
                $(this).parents(".cart-item").removeClass("check-cart-item");
            }
        })
        // 3. 增减商品数量模块 首先声明一个变量，当我们点击+号（increment），就让这个值++，然后赋值给文本框。
    $(".increment").click(function() {
        var n = $(this).siblings(".itxt").val();
        n++;
        $(this).siblings(".itxt").val(n);
        var p = $(this).parents(".p-num").siblings(".p-price").html();
        // console.log(p);
        p = p.substr(1);
        // toFixed(2) 可以让我们保留2位小数
        $(this).parent().parents(".p-num").siblings(".p-sum").html("￥" + (p * n).toFixed(2));
        getSum();

    })
    $(".decrement").click(function() {
            var n = $(this).siblings(".itxt").val();
            if ($(this).siblings(".itxt").val() == 1) {
                return false;
            }
            n--;
            $(this).siblings(".itxt").val(n);
            // var p = $(this).parent().parent().siblings(".p-price").html();
            var p = $(this).parents(".p-num").siblings(".p-price").html();
            // console.log(p);
            p = p.substr(1);
            $(this).parents(".p-num").siblings(".p-sum").html("￥" + (p * n).toFixed(2));
            getSum();

        })
        //  4. 用户修改文本框的值 计算 小计模块  
    $(".itxt").change(function() {
        var n = $(this).val();
        var p = $(this).parents(".p-num").siblings(".p-price").html();
        p = p.substr(1);
        $(this).parents(".p-num").siblings(".p-sum").html("￥" + (p * n).toFixed(2));
        getSum();


    })

    //计算总和模块
    function getSum() {
        var money = 0;
        var count = 0;
        $(".itxt").each(function(i, ele) {
            count += parseInt($(ele).val());
            // console.log(count);
        })
        $(".amount-sum em").html(count);

        $(".p-sum").each(function(i, ele) {
            money += parseFloat($(ele).text().substr(1));
        })
        $(".price-sum em").text(money.toFixed(2));
    }

    // 6. 删除商品模块
    // (1) 商品后面的删除按钮
    $(".p-action a").click(function() {
        $(this).parents(".cart-item").remove();
        getSum();
    })

    //删除选中的商品

    $(".remove-batch").click(function() {
            //检查
            $(".j-checkbox:checked").parents(".cart-item").remove();
            getSum();

        })
        //清除购物车
    $(".clear-all").click(function() {
        $(".cart-warp").remove();
        getSum();
    })


})